package com.wei.web.middleware.retry.compensate.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author shihuimiao
 * create time: 3:24 下午
 */

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface Retry {

    String value() default "";

    /**
     * 重复次数 如果想区别全局配置就可以自己配置 覆盖全局配置
     *
     * @return
     */
    int retry() default 0;

    /**
     * 入参相同是否还需要重试 默认也重试
     *
     * @return
     */
    boolean paramCanRepeat() default true;

}
